#ifndef _SYS_FACET_H_
#define _SYS_FACET_H_

#include "FanObj.h"
#include "SysTypes.h"

#define FACET_VTABLE(self)   ((FacetVTable*)((FanObj*)self)->vtable)


extern Type*    Facet_classType;
extern VTable*  Facet_classVTable;


/* [sys::Facet] Attributes */
struct Facet
{
  FanObj        super;
};


/* [sys::Facet] Virtual-table */
typedef struct FacetVTable
{
  FanObjVTable  super;
} FacetVTable;


/* [sys::Facet] Methods and fields */


/* [sys::Facet] Type-system functions */
Type*           Facet_initType(void);
VTable*         Facet_initVTable(void);
void            Facet_initStatic(void);


#endif
